package br.com.vti.sisp_sicrim.controller;

import java.util.Arrays;

import org.springframework.beans.factory.annotation.Qualifier;

import br.com.caelum.vraptor.Get;
import br.com.caelum.vraptor.Path;
import br.com.caelum.vraptor.Resource;
import br.com.caelum.vraptor.Result;
import br.com.caelum.vraptor.Validator;
import br.com.crud4j.core.model.business.Business;
import br.com.crud4j.core.util.MessageResolver;
import br.com.crud4j.vraptor3.controller.ControllerImpl;
import br.com.vti.sisp_sicrim.model.entity.DadosFisicos;
import br.com.vti.sisp_sicrim.model.entity.FichaCriminal;
import br.com.vti.sisp_sicrim.model.entity.enums.CorCabelo;
import br.com.vti.sisp_sicrim.model.entity.enums.CorOlhos;
import br.com.vti.sisp_sicrim.model.entity.enums.Cutis;
import br.com.vti.sisp_sicrim.model.entity.enums.Possui;
import br.com.vti.sisp_sicrim.modelo.business.exception.DadosFisicosException;

@Resource
@Path("/pages/dadosFisicos")
public class DadosFisicosController extends ControllerImpl<DadosFisicos, DadosFisicosException> {
	
	public DadosFisicosController(Result result, Validator validator,
			@Qualifier("dadosFisicosBusiness") Business<DadosFisicos, DadosFisicosException> entidadeBusiness,
			MessageResolver messageResolver) {
		super(result, validator, entidadeBusiness, messageResolver);
	}
    
    @Override
    @Get(value={"novo","buscar/{entidade.id}"})
    public void cadastrar(DadosFisicos entidade) {
    	include("barbaList", Arrays.asList(Possui.values()));
    	include("bigodeList", Arrays.asList(Possui.values()));
    	include("bocaList", Arrays.asList(Possui.values()));
    	include("compleicaoList", Arrays.asList(Possui.values()));
    	include("narizList", Arrays.asList(Possui.values()));
    	include("orelhaList", Arrays.asList(Possui.values()));
    	include("rostoList", Arrays.asList(Possui.values()));
    	include("labioList", Arrays.asList(Possui.values()));
    	include("cabeloList", Arrays.asList(CorCabelo.values()));
    	include("corPeleList", Arrays.asList(Cutis.values()));
    	include("olhoList", Arrays.asList(CorOlhos.values()));
    	super.cadastrar(entidade);
    }

    @Override
    public void salvar(DadosFisicos entidade) {
    	FichaCriminal fc = new FichaCriminal(1);
    	entidade.setFichaCriminal(fc);
    	super.salvar(entidade);
    }


}
